<?php
require_once 'login.php';
require_once 'DAO/DaoRepublica.php';
require_once 'DAO/DaoUsuarioRepublica.php';
require_once 'DAO/DaoSolicitacoes.php';
require_once 'DAO/DaoEstatisticaRepublica.php';
require_once 'DAO/DaoComentarioRepublica.php';
require_once 'DAO/DaoImagemRepublica.php';

class RepublicaController {

    private $republica;

    function RepublicaController() {
        $gets = explode("/", $_SERVER['REQUEST_URI']);
        $codRepublica = (isset($gets[3])) ? $gets[3] : NULL;

        if (is_numeric($codRepublica)) {
            $dr = new DaoRepublica();
            $this->republica = $dr->getRepublica($codRepublica);
            if (LoginController::singleton()->estaConectado()) {
                $this->addEstatistica();
                $this->verificaFormSolicitacaoRepublica();
                $this->verificaFormComentario();
            }

            require_once 'viewRepublica.php';
        }
    }

    function addEstatistica() {
        /*          Add contagem as Estatistica do evento           */
        $DaoEstatisticaRepublica = new DaoEstatisticaRepublica();
        $DaoEstatisticaRepublica->addEstatisticaRepublica(new Estatistica($this->republica, LoginController::singleton()->getUsuario(), 0, 0, $_SERVER["REMOTE_ADDR"]));
    }

    function verificaFormSolicitacaoRepublica() {
        /*          Verifica Solicitações                           */
        $ds = new DaoSolicitacoes();
        $solicitacao = new Solicitacoes();
        $solicitacao->setRepublica($this->republica);
        $solicitacao->setUsuario(LoginController::singleton()->getUsuario());
        if (isset($_POST['formSolicitacaoRepublica'])) {
            $ds->addSolicitacao($solicitacao);
        }
        if (isset($_POST['formRemoveSolicitacaoRepublica'])) {
            $ds->removeSolicitacao($solicitacao);
        }
    }

    function verificaFormComentario() {
        /*          Verifica se foi Enviado um Comentario           */
        if (isset($_POST['formComentarioRepublica'])) {
            $DaoComentario = new DaoComentarioRepublica();
            $DaoComentario->addComentario(new Comentario(LoginController::singleton()->getUsuario(), $this->republica, $_POST['edtComentario']));
        }
    }

    function getMoradores(Republica $republica) {

        $usuariosRepublica = $republica->getMoradores();

        if ($usuariosRepublica != NULL) {
            ?>
            <table class="table table-striped">
                <?
                foreach ($usuariosRepublica as $usu) {
                    ?>
                    <tr>
                        <td><img src="/Versao1/img/icon-Empresa.png" style="max-height: 20px; min-height: 20px;"/></td>
                        <td><? echo $usu->getUsuario()->getNome(); ?></td>
                    </tr>
                    <?
                }
                ?>

            </table>
            <?
        }
    }

    function getFormSolicitacao($republica) {
        if (isset($_SESSION['Usuario'])) {
            if ($_SESSION['USU_TIPO'] == TIPO_USUARIO) {
                $usuario = $_SESSION['Usuario'];

                $rep = $usuario->getRepublicaAtual();
                if ($rep == NULL) {
                    $ds = new DaoSolicitacoes();
                    $solicitacao = new Solicitacoes();
                    $solicitacao->setRepublica($republica);
                    $solicitacao->setUsuario($usuario);

                    if ($ds->usuarioSolicitou($solicitacao)) {
                        ?>
                        <form method="POST" action="">
                            <input type="hidden" id="formRemoveSolicitacaoRepublica" name="formRemoveSolicitacaoRepublica" value="formRemoveSolicitacaoRepublica"/>
                            <button type="submit" class="btn">Retirar Solicitação</button>
                        </form>
                        <?
                    } else {
                        ?>
                        <form method="POST" action="">
                            <input type="hidden" id="formSolicitacaoRepublica" name="formSolicitacaoRepublica" value="formSolicitacaoRepublica"/>
                            <button type="submit" class="btn">Inscreva-se para esta republica</button>
                        </form>
                        <?
                    }
                }
            }
        }
    }

    function getNotaRepublica(Republica $republica) {
        ?>
        <div class="span4 text-center label label-success">
            <i class="icon-star"> </i><i class="icon-star"> </i><i class="icon-star"> </i><i class="icon-star"> </i><i class="icon-star"> </i>
            <h1 style="margin-top: 0px;">Nota: 10.0</h1>
        </div>
        <?
    }

    function getComentariosRepublica(Republica $republica) {

        $comentarios = $republica->getComentarios(3);
        ?>
        <div class="span8">
            <?
            foreach ($comentarios as $comentario) {
                ?>
                <blockquote>
                    <p><? echo $comentario->getComentario(); ?></p>
                    <small><? echo $comentario->getUsuario()->getNome(); ?></small>
                </blockquote>
                <?
            }
            ?>
            <?
            if (isset($_SESSION['Usuario'])) {
                ?>
                <form method="POST" action="">
                    <input type="hidden" name="formComentarioRepublica" id="formComentarioRepublica"/>
                    <textarea class="span12" name="edtComentario" id="edtComentario" placeholder="Diga o que você acha desta republica..."></textarea>
                    <button type="submit" class="btn">Enviar Comentario</button>
                </form>
                <?
            }
            ?>
        </div>
        <?
    }

    function getComentariosEventosRepublica(Republica $republica) {

        $comentarios = $republica->getComentarios(3);
        ?>
        <div class="span8">
            <?
            foreach ($comentarios as $comentario) {
                ?>
                <blockquote>
                    <p><? echo $comentario->getComentario(); ?></p>
                    <small><? echo $comentario->getUsuario()->getNome(); ?></small>
                </blockquote>
                <?
            }
            ?>
            <?
            if (isset($_SESSION['Usuario'])) {
                ?>
                <form method="POST" action="">
                    <input type="hidden" name="formComentarioRepublica" id="formComentarioRepublica"/>
                    <textarea class="span12" name="edtComentario" id="edtComentario" placeholder="Diga o que você acha desta republica..."></textarea>
                    <button type="submit" class="btn">Enviar Comentario</button>
                </form>
                <?
            }
            ?>
        </div>
        <?
    }

    function getImagensRepublica(Republica $republica) {
        ?>
        <div id="principal" class="lightbox hide fade"  tabindex="-1" role="dialog" aria-hidden="true">
            <div class='lightbox-content'>
                <img class="img-polaroid span12" style="margin: 0px;" src="/Versao1/img/<? echo $republica->getImagemPrincipal()->getImagem() ?>" alt="photo">';
            </div>
        </div>
        <a data-toggle="lightbox" href="#principal" data-target="#principal"><img class="img-polaroid span12" style="margin: 0px;" src="/Versao1/img/<? echo $republica->getImagemPrincipal()->getImagem() ?>" alt="photo"></a>

        <br>
        <?
        ?>
        <div class="row-fluid">
            <?
            $image = $republica->getImagens(4);
            $cont = 0;
            foreach ($image as $img) {
                ?>
                <div id="principal<?echo $cont;?>" class="lightbox hide fade"  tabindex="-1" role="dialog" aria-hidden="true">
                    <div class='lightbox-content'>
                        <img class="img-polaroid span12" src="/Versao1/img/<? echo $img->getImagem(); ?>" alt="photo">';
                    </div>
                </div>
            <a data-toggle="lightbox" href="#principal<?echo $cont;?>" data-target="#principal<?echo $cont;?>"><img class="img-polaroid span3" src="/Versao1/img/<? echo $img->getImagem(); ?>" alt="photo"></a>
                <?
                $cont=$cont+1;
            }
            ?>
        </div>
        <?
    }

    public function getRepublica() {
        return $this->republica;
    }

}
?>
